import type { RoleInfo } from './roleModel'
/**
 * @description: Login interface parameters
 */
export interface LoginParams {
  username: string
  password: string
}

/**
 * @description: Login interface return value
 */
export interface LoginResultModel {
  token: string
  user: GetUserInfoModel
}

export interface LoginUserModel {
  userId: string | number
  roles: RoleInfo[]
}

/**
 * @description: Get user information return value
 */
export interface GetUserInfoModel {
  roles: RoleInfo[]
  // 用户id
  userId: string | number
  // 用户名
  username: string
  // 真实名字
  realName: string
  // 头像
  avatar?: string
  // 介绍
  desc?: string
  //租户
  tenantId?: string
}

export interface GetUserListModel {
  // 用户id
  id: string | number
  // 用户名
  username: string
  // 真实名字
  realName: string
  // 头像
  avatar?: string
  // 介绍
  desc?: string
}

export interface GetUserListSoModel {
  current: number | undefined
  size: number | undefined
  query?: SimpleQueryModel | null
}

export interface ListAllUserModel {
  // 用户id
  userId: string | number
  // 真实名字
  realName: string
}

export interface SimpleQueryModel {
  keyword: string
}

export interface FormState {
  userName: string
  realName: string
  password: string
  verifyPassword: string
  email: string
  userTel: string
  tenantId: string
}
